package com.bruce.shop.dao;

import java.security.PublicKey;
import java.util.List;

/**
 * @author BruceXia
 * @version 1.0.0
 * @description:抽取出来的Dao层实现crud，总条数查询，分页查询的接口,<T>是泛型类，
 * 方便实现各个实体类的crud
 * @date 2022/9/1718:45
 */
public interface BaseDao<T>{
    //添加数据
    public Integer insert(T t);

    //修改数据
    public Integer update(T t);

    //删除数据(通过id)
    public Integer deleteById(Integer id);

    //查询单个数据(通过id)
    public T selectById(Integer id);

    //查询所有数据
    public List<T> list();

    //查询总条数，通过总条数和每页的条数可以知道总共有多少页，
    //总页数就是最后一页，这样在前端就可以直接跳转到最后一页
    public Integer count();

    //分页：查询当前索引的后一页，size是每页的页数
    public List<T> list(Integer size,Integer index);

}
